The RubyGems ekosistem adalah jawaban Ruby terhadap kacau "krisis dependensi" dalam manajemen perpustakaan tradisional. Alih-alih menimpa file-file di direktori global bersama, RubyGems menggunakan Isolasi Arsitektur.
1. Keajaiban Runtime
Berbeda dengan perpustakaan standar, setiap versi Gem berada di direktori yang mandiri. Saat Anda memanggil gem 'nama', 'versi', RubyGems melakukan "Keajaiban Runtime": secara dinamis menambahkan folder lib ke dalam $LOAD_PATH array global.
2. Resolusi & Repositori
Sementara sebuah instalasi lokal bisa gagal jika suatu dependensi tidak tersedia, instalasi jarak jauh (dengan menggunakan --remote) secara otomatis mengambil seluruh pohon dependensi dari repositori pusat, memastikan bahwa Kendala Versi dipenuhi sebelum eksekusi dimulai.
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>